package com.hopu.mapper;

import com.hopu.entity.MyArea;
import org.apache.ibatis.annotations.*;

import java.util.List;

/**
 * @Package: com.hopu.mapper
 * @ClassName: MyAreaMapper
 * @Author: xiaoBao
 * @CreateTime: 2020/10/26 17:31
 * @Description:    片区信息管理持久层
 */
public interface MyAreaMapper {
    /**
     * findAllAreaPageInfo 【查询所有片区信息内容】
     * @return 返回一个片区信息数据模型的集合到服务层
     */
    @Select("SELECT * FROM myarea")
    List<MyArea> findAllAreaPageInfo();


    /**
     * checkAreaAlread 【根据片区名查询片区是否存在】
     * @param myArea 片区数据模型，用于作为输入参数传输到SQL语句中；
     * @return 将查询结果返回给服务层。
     */
    @Select("SELECT * FROM myarea WHERE aname = #{aname}")
    MyArea checkAreaAlread(MyArea myArea);


    /**
     * addAreaInfo 【添加一条片区信息】
     * @param myArea 前台添加提交表单传输的片区名；
     * @return 将执行结果返回给服务层。
     */
    @Insert("INSERT INTO myarea(aname)VALUES(#{aname})")
    Integer addAreaInfo(MyArea myArea);


    /**
     * findAreaByAid 【根据片区ID查询一条片区数据（实现修改弹窗数据回显）】
     * @param myArea 点击修改片区发送的Id；
     * @return  将查询结果返回给服务层。
     */
    @Select("SELECT * FROM myarea WHERE aid = #{aid}")
    MyArea findAreaByAid(MyArea myArea);


    /**
     * updateAreaInfo 【根据Id修改一条片区信息】
     * @param myArea “片区Id”和“片区原名称”；
     * @return 执行的影响行数结果返回给服务层。
     */
    @Update("UPDATE myarea SET aname = #{aname} WHERE aid = #{aid}")
    Integer updateAreaById(MyArea myArea);


    /**
     * deleteAreaById 【根据Id删除一条片区信息】
     * @param myArea 片区Id；
     * @return 执行的影响行数结果返回给服务层。
     */
    @Delete("DELETE FROM myarea WHERE aid = #{aid}")
    Integer deleteAreaById(MyArea myArea);
}
